#Boa:Dialog:Dialog1
# -*- coding:  latin1

import wx
import wx.richtext
import wx.calendar
import consultasBD
import ImpresionFiscal
import utiles

def create(parent):
    return Dialog1(parent)

[wxID_DIALOG1, wxID_DIALOG1BUTTON1, wxID_DIALOG1BUTTON2, wxID_DIALOG1CHOICE1, 
 wxID_DIALOG1INCOD, wxID_DIALOG1INFECHAENTRADAARREGLO, 
 wxID_DIALOG1INFECHAENTREGACLIENTE, wxID_DIALOG1MODISTA, 
 wxID_DIALOG1RICHTEXTCTRL1, wxID_DIALOG1STATICTEXT1, wxID_DIALOG1STATICTEXT2, 
 wxID_DIALOG1STATICTEXT3, wxID_DIALOG1STATICTEXT4, wxID_DIALOG1STATICTEXT6, 
 wxID_DIALOG1STATICTEXT7, 
] = [wx.NewId() for _init_ctrls in range(15)]

class Dialog1(wx.Dialog):
    def _init_ctrls(self, prnt):
        # generated method, don't edit
        wx.Dialog.__init__(self, id=wxID_DIALOG1, name='', parent=prnt,
              pos=wx.Point(238, 322), size=wx.Size(606, 229),
              style=wx.DEFAULT_DIALOG_STYLE, title='Cargar Arreglo Modista')
        self.SetClientSize(wx.Size(598, 195))

        self.staticText1 = wx.StaticText(id=wxID_DIALOG1STATICTEXT1,
              label='Fecha Ingreso del Arreglo:', name='staticText1',
              parent=self, pos=wx.Point(8, 8), size=wx.Size(129, 13), style=0)

        self.staticText2 = wx.StaticText(id=wxID_DIALOG1STATICTEXT2,
              label='Fecha de Entrega al Cliente:', name='staticText2',
              parent=self, pos=wx.Point(280, 8), size=wx.Size(137, 13),
              style=0)

        self.infechaentregacliente = wx.DatePickerCtrl(id=wxID_DIALOG1INFECHAENTREGACLIENTE,
              name='infechaentregacliente', parent=self, pos=wx.Point(416, 8),
              size=wx.Size(96, 21), style=wx.DP_DROPDOWN)

        self.infechaentradaarreglo = wx.DatePickerCtrl(id=wxID_DIALOG1INFECHAENTRADAARREGLO,
              name='infechaentradaarreglo', parent=self, pos=wx.Point(136, 8),
              size=wx.Size(96, 21), style=wx.DP_DROPDOWN)

        self.staticText3 = wx.StaticText(id=wxID_DIALOG1STATICTEXT3,
              label='Codigo de Art.:', name='staticText3', parent=self,
              pos=wx.Point(8, 40), size=wx.Size(75, 13), style=0)

        self.incod = wx.TextCtrl(id=wxID_DIALOG1INCOD, name='incod',
              parent=self, pos=wx.Point(88, 40), size=wx.Size(100, 21), style=0,
              value="")

        self.staticText4 = wx.StaticText(id=wxID_DIALOG1STATICTEXT4,
              label='Arreglo:', name='staticText4', parent=self,
              pos=wx.Point(24, 72), size=wx.Size(40, 13), style=0)

        self.button1 = wx.Button(id=wxID_DIALOG1BUTTON1, label='Guardar',
              name='button1', parent=self, pos=wx.Point(336, 136),
              size=wx.Size(88, 32), style=0)
        self.button1.Bind(wx.EVT_BUTTON, self.OnButton1Button,
              id=wxID_DIALOG1BUTTON1)

        self.button2 = wx.Button(id=wxID_DIALOG1BUTTON2, label='Cancelar',
              name='button2', parent=self, pos=wx.Point(144, 136),
              size=wx.Size(88, 32), style=0)

        self.choice1 = wx.ComboBox(choices=["En Negocio PARA Modista",
              "En Modista", "En Negocio PARA Cliente", "Entregada"],
              id=wxID_DIALOG1CHOICE1, name='choice1', parent=self,
              pos=wx.Point(432, 40), size=wx.Size(160, 21), style=0,
              value='En Negocio PARA Modista')
        self.choice1.SetLabel('seleccionar estado...')

        self.modista = wx.ComboBox(choices=["Cristina", "Ana", "Silvina"],
              id=wxID_DIALOG1MODISTA, name='modista', parent=self,
              pos=wx.Point(240, 40), size=wx.Size(144, 21), style=0,
              value='En Negocio PARA Modista')
        self.modista.SetLabel('seleccionar modista...')

        self.richTextCtrl1 = wx.richtext.RichTextCtrl(id=wxID_DIALOG1RICHTEXTCTRL1,
              parent=self, pos=wx.Point(72, 72), size=wx.Size(408, 56),
              style=wx.richtext.RE_MULTILINE, value='')
        self.richTextCtrl1.SetLabel('text')

        self.staticText6 = wx.StaticText(id=wxID_DIALOG1STATICTEXT6,
              label='Modista:', name='staticText6', parent=self,
              pos=wx.Point(192, 40), size=wx.Size(42, 13), style=0)

        self.staticText7 = wx.StaticText(id=wxID_DIALOG1STATICTEXT7,
              label='Estado:', name='staticText7', parent=self,
              pos=wx.Point(392, 40), size=wx.Size(38, 13), style=0)

    def __init__(self, parent):
        #esta es la variable que utilizo para ver si graba o no un arreglo
        self.codpro = parent.codpro
        self.padre = parent
        print "carga:"+ str(parent.cargaSioNo)
        self._init_ctrls(parent)
        self.incod.ChangeValue(str(parent.codpro))

    def OnButton1Button(self, event):
        incod = self.incod.Value
        fechaentrada = str(self.infechaentradaarreglo.GetValue())[0:8]
        fechaentrega = str(self.infechaentregacliente.GetValue())[0:8]
        modista= self.modista.Value
        arreglo = self.richTextCtrl1.Value
        estado = self.choice1.Value
        tablaSQL = "modista(idmodista,arreglo,fechaingreso,fechaentrega,codigoart,estado)"
        camposSQL = "('"+str(modista)+"','"+str(arreglo)+"','"+ \
                    fechaentrada[-2:]+"/"+fechaentrada[:2]+"/"+fechaentrada[3:5]+"','"+ \
                    fechaentrega[-2:]+"/"+fechaentrega[:2]+"/"+fechaentrega[3:5]+"','"+ \
                    str(incod)+"','"+str(estado)+"')"
        idarticulo = consultasBD.executaInsertSQL(self,tablaSQL,camposSQL)
        print "SE INSERTO arreglo modista"
        self.padre.cargaSioNo = 1

        #PARAMETROS PARA QUE IMPRIMA EL TICKET
        aux = []
        aux.append("Fecha de entrada: " + fechaentrada[3:5]+"/"+fechaentrada[:2]+"/"+fechaentrada[-2:])
        aux.append("Fecha de entrega: " + fechaentrega[3:5]+"/"+fechaentrega[:2]+"/"+fechaentrega[-2:])
        aux.append("Modista asignada: " + modista)
        aux.append("Detalle del trabajo: ")
        aux += utiles.splitear(arreglo,40)
        lista = []
        for renglon in aux:
            lista.append(str(renglon))
        ImpresionFiscal.ticketModista(lista)
        print lista
        
        #msg correcto que se cargo
        self.Close()

